<script lang="ts" setup name="person">
import son from "@/components/tongxin/props/son.vue";
</script>
<!-- 组件之间通信 -->
 1 父子--父孙  props   可以传递数据和函数
 2 需要结束defineEmits(["父组件中的自定义事件名"])
 3  _mitt 需要下载一个插件emitter  这个类似于eventbus  他有四个状态，发送 接受 解绑 清空全部事件（类似于2中的自定义事件，可以卸载事件做一些项目优化的工作）   
 4  v-model用在组件标签上   vue2与vue3   v-model原理不同    但是工作中不常用 面试可以秀一把，在vue3中一个组件上可以同时使用多个model
 5  $attrs专门适用于祖孙之间的通信    （本质还需要借助中间父亲  只是他的父亲什么都花，全部留个儿子啦）感觉本质就是父子通信借助props
 6  借助前期所学的打标识ref获取实例队形，但是要在儿子这中开启权限，直接在父组件中修改子组件中的数据即可，-------$refs获取所有子组件实例对象没然后循环每一个子组件实例
    $parent子调父亲方法
 7 _provide_inject  实现0打扰实现祖孙组件之间的通信  不需要借助父亲  发送方： provide("函数名","参数")   接收方： inject("函数名","参数")  还可以设置默认值接收方
    也可以实现孙传祖通信  参数可以传递一个对象 一次传递多个
//注意所有的组件之间通信传递的数据都必须是响应式的   不能.value把值传递过去
<template>
  <div>
    父组件
    <son></son>
  </div>
</template>

<style scoped>
</style>
